/**
 * Universidad del Valle de Guatemala
 * Algoritmos y Estructura de Datos
 * Sección 10
 * Carlos Alberto Solórzano Pineda (08832)
 * 06 de septiembre de 2011
 * @author carlos
 * @version 1.2
 *
 * Clase que emula los tiempos de llegada y operación de los clientes en un banco
 */
public class Client {
	// Atributos
	private int arrivalTime; 		// Hora de llegada del cliente
	private int operationTime;		// Tiempo de operación
	private int departureTime; 		// Tiempo total en el banco
	
	
	/**
	 * 
	 * @param arrivalTime Hora de llegada del cliente
	 * @param operationTime Tiempo de operación en la ventanilla
	 */
	public Client(int arrivalTime, int operationTime) {
		this.setArrivalTime(arrivalTime);
		this.setOperationTime(operationTime);
		
		departureTime = arrivalTime + operationTime;
	}


	/**
	 * @return La hora de llegada del cliente
	 */
	public int getArrivalTime() {
		return arrivalTime;
	}


	/**
	 * @param arrivalTime Hora de llegada del cliente al banco
	 */
	public void setArrivalTime(int arrivalTime) {
		this.arrivalTime = arrivalTime;
	}


	/**
	 * @return El tiempo de la operación en el banco
	 */
	public int getOperationTime() {
		return operationTime;
	}


	/**
	 * @param operationTime Tiempo que dura la transacción en el banco
	 */
	public void setOperationTime(int operationTime) {
		this.operationTime = operationTime;
	}


	/**
	 * @return El tiempo de salida del banco
	 */
	public int getDepartureTime() {
		return departureTime;
	}

}
